The remote network driver interface specification (RNDIS) is a network device specification. It requires an RNDIS device to process the object identifier descriptor (OID) which comes from the system. Therefore, a driver program provided in the system can be used by different RNDIS devices in compatible mode, no dedicated driver program needs to be developed for a specific RNDIS device, and the system can send different OIDs to the RNDIS devices to implement specific functions.
The use of the RNDIS not only brings great convenience to users but also simplifies the development of the RNDIS device. However, RNDIS driver program can only transmit network data, and cannot transmit control commands of users. Therefore, users' basic requests such as dialup and dialup disconnection, cannot be transmitted to the RNDIS device, but can be implemented through other operations only. For example, the network can be disconnected only by means of removing the device, which is inconvenient for users.
To solve this problem, in the prior art, the RNDIS driver is used as an interface of the RNDIS device, and an additional control interface is added in the RNDIS device, where a user device sends a control command through the control interface to control the RNDIS device.
Adding control interface is applicable only to an RNDIS device with a universal serial bus interface rather than to RNDIS devices with all kinds of interfaces. So this solution has no common applicability. In addition, because a new control interface is added, a user needs to add an additional driver program for the new control interface, which increases the complexity of the usage.